<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <link href="../../third-party/bootstrap/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <script src="../../third-party/jquery-1.10.2.min.js"></script>
    <script src="../../third-party/bootstrap/js/bootstrap.bundle.min.js" integrity="sha384-/mhDoLbDldZc3qpsJHpLogda//BVZbgYuw6kof4u2FrCedxOtgRZDTHgHUhOCVim" crossorigin="anonymous"></script>
</head>
<body>
<div class="container" style="margin-top: 20px">
    <form action="">
        <div class="mb-3">
            <label for="url">链接地址</label>
            <input type="text" class="form-control" id="url">
        </div>
        <div class="mb-3">
            <label for="content">HTML内容
                <br>
                <span style="color: red;font-size: 12px;">
                    方式一：在系统设置-知网设置里按提示操作完成后，打开知网需要抓取的文章，将url复制到上方输入框中，点击底部“抓取 / 过滤”按钮，如果下方框中抓取到内容，则点击最底部“确定”按钮完成操作。
                </span>
                <br>
                <span style="color: red;font-size: 12px;">
                    方式二：若方式一抓取不到内容，请清空url输入框，打开知网需要抓取的文章，按“F12”键，在弹出的代码窗口中，在“body”标记中右击，选择复制，然后将复制的内容粘贴到下方输入框中，点击底部“抓取 / 过滤”按钮，再点击最底部“确定”按钮。
                </span>
            </label>
            <textarea name=""  class="form-control" id="content" cols="30" rows="10"></textarea>
        </div>
        <div class="mb-3">
            <button id="submit" class="btn btn-primary" type="button">抓取/过滤</button>
        </div>
    </form>
</div>
<!--页面中一定要引入internal.js为了能直接使用当前打开dialog的实例变量-->
<!--internal.js默认是放到dialogs目录下的-->
<div style="display: none">
    <!--标题-->
    <!--标题（标题）-->
    <!--作者-->
    <!--作者（英文）-->
    <!--作者单位-->
    <!--作者单位（英文）-->
    <!--摘要-->
    <!--摘要（英文）-->
    <!--关键词-->
    <!--关键词（英文）-->
    <!--作者简介-->
    <!--正文内容-->
    <div id="articleContent"></div>
</div>
<script type="text/javascript" src="../../dialogs/internal.js"></script>
<script>
    $(function () {
        let body = {}
        $("#submit").click(function () {
            let content = $("#content").val();

            let contentHtml = $.parseHTML(content);

            let mainBody = '';
            $.each(contentHtml, function (i, v) {
                if (v.tagName === 'DIV' && $(v).attr('id') === 'mainBody') {
                    mainBody = v;
                }
            });
            // 标题
            body.title = $(mainBody).find('.main #topTitle').text();
            // 标题（英文）
            body.title_en = $(mainBody).find('.main #EngTitle').text();
            // 作者
            body.authors = $(mainBody).find('.main #authorsId').text();
            // 作者(英文)
            body.authors_en = '';
            // 作者单位
            body.author_companies = $(mainBody).find(".main #InfoOrgsId").text();
            // 作者单位(英文)
            body.author_companies_en = ''
            // 摘要
            body.summary = $(mainBody).find('.main #b-abstract').text();
            // 摘要(英文)
            body.summary_en = $(mainBody).find('.main #a_abstractEN').text();
            // 关键词
            body.keywords = $(mainBody).find('.main #b_keywords').text();
            // 关键词(英文)
            body.keywords_en = $(mainBody).find('.main #a_keywordsEN').text();
            // 作者简介
            body.author_remark = $(mainBody).find('.main #briefId').text();
            // 正文
            body.content = $(mainBody).find(".main .content").html();
            $("#articleContent").html(body.content);
            $("#articleContent").find('#promptBox').remove();
            $("#articleContent").find('.tips').remove();
            $("#articleContent").find('.top-title').remove();
            $("#articleContent").find('#authorsId').remove();
            $("#articleContent").find('#InfoOrgsId').remove();
            $("#articleContent").find('#a_abstract').remove();
            $("#articleContent").find('#a_abstractEN').remove();
            $("#articleContent").find('.link').remove();
            $("#articleContent").find('#a_keywords').remove();
            $("#articleContent").find('#a_keywordsEN').remove();
            $("#articleContent").find('.brief').remove();
            $("#articleContent").find('#EngTitle').remove();
            $("#articleContent").find('.btn-downloads').remove();

            // 处理图片
            $.each($("#articleContent img"), function (i, v) {
                let src = $(v).data('src');
                console.log(src);
                $(v).attr('src', "https://kns.cnki.net/KXReader/" + src);
                $(v).attr('data-src', "https://kns.cnki.net/KXReader/" + src);
            })

            // 处理文献
            $("#articleContent #a_bibliography").find('h3').remove();
            $.each($("#articleContent #a_bibliography p"), function (i, v) {
                let a = $(v).find('a');
                let title = $(a).attr('title');
                if (title == undefined) {
                    $(a).find('b').remove();
                    title = $(a).html();
                    title = $.trim(title);
                }
                let href = $(a).attr('href');
                let sort = i+1;
                sort = "["+sort+"] ";
                if (href == undefined) {
                    $(v).html("<a title='"+title+"'>"+sort+title+"</a>")
                } else {
                    $(v).html("<a target='_blank' href='"+href+"' title='"+title+"' style='color: black;cursor: pointer;'>"+sort+title+"</a>")
                }
            })
            // 参考文献
            body.reference_desc = $("#articleContent #a_bibliography").html();
            $("#articleContent #a_bibliography").remove();
        });

        dialog.onok = function () {
            // 插入正文内容
            editor.execCommand('inserthtml', $("#articleContent").html());

            // 表单赋值
            $.each(body, function (i ,v) {
                if ($.inArray(i, [
                    'title', 'title_en',
                    'authors', 'authors_en',
                    'author_companies', 'author_companies_en',
                    'summary', 'summary_en',
                    'keywords', 'keywords_en',
                    'author_remark'
                ]) != -1) {
                    if ($.inArray(i, [
                        'authors', 'authors_en', 'author_companies', 'author_companies_en'
                    ]))

                    if (i === 'keywords') {
                        v = v.replace(/关键词：/g, '');
                    }
                    if (i === 'keywords_en') {
                        v = v.replace(/Keyword：/g, '');
                    }
                    if (i === 'author_remark') {
                        v = v.replace(/作者简介：/g, '');
                    }
                    if (i === 'summary_en') {
                        v = v.replace(/Abstract：/g, '');
                    }
                    $("#"+i, window.parent.document).val($.trim(v));
                }
            });
            if ($("#reference_desc", window.parent.document).length) {
                let reference_desc = window.parent.UE.getEditor('reference_desc');
                if (reference_desc) {
                    reference_desc.execCommand('inserthtml', body.reference_desc);
                }
            }
        }
    })
</script>
</body>
</html>
